package cn.wolfcode.trip.base.service;

import cn.wolfcode.trip.base.domain.NewsContent;
import cn.wolfcode.trip.base.domain.NewsPage;
import cn.wolfcode.trip.base.query.NewPagesQueryObject;
import cn.wolfcode.trip.base.query.QueryObject;
import cn.wolfcode.trip.base.query.TravelCommentQueryObject;
import com.github.pagehelper.PageInfo;

import java.util.List;

/**
 * 日报文章
 */

public interface INewsPageService {


    /**
     * 更新操作
     * @param newsPage
     */
    void update(NewsPage newsPage);

    /**
     * 保存操作
     * @param newsPage
     */
    void save(NewsPage newsPage);


    /**
     * 所有的日报文章
     */
    List<NewsPage> listAll();

    /**
     * 分页
     * @param qo
     * @return
     */
    PageInfo<NewsPage> query(QueryObject qo);

    /**
     * 获取日报内容
     * @param id : 文章id
     * @return
     */
    NewsContent getContentById(Long id);

    /**
     * 获取日报文章 及 日报的具体内容
     * @param id
     * @return
     */
    NewsPage get(Long id);

    /**
     * 分页查询
     * @param qo
     * @return
     */
    PageInfo queryForApp(TravelCommentQueryObject qo);

    /**
     * 获取某个文章
     * @param id
     * @return
     */
    NewsPage selectByPrimaryKey(Long id);

    /**
     * 搜索日报
     * @param qo
     * @return
     */
    PageInfo getNewsPageCounts(QueryObject qo);

    /**
     * 根据浏览量查询头条日报
     * @return
     */
    NewsPage selectBiggerNews();
}
